KL
pedido scripts

Pokemon morre ao passar pelo teleport

Por klbkevinklb, 27 de out. de 2018 em Scripts

26
6.3k
klbkevinklbK
27 de outubro de 2018 às 23:48

opa galera boa noite, bom eu sei que eu peço as coisas aqui, mas assim...sao coisas que nao consigo arrumar, entao o problema é assim, o player passa com poke pra fora da ball no teleport e ele morre, alguem poderia me ajudar?

MarshmelloM
28 de outubro de 2018 às 05:37
5 horas atrás, klbkevinklb disse:

opa galera boa noite, bom eu sei que eu peço as coisas aqui, mas assim...sao coisas que nao consigo arrumar, entao o problema é assim, o player passa com poke pra fora da ball no teleport e ele morre, alguem poderia me ajudar?

Quem Morreria o Player ou o pokemon?

klbkevinklbK
28 de outubro de 2018 às 06:51

bom dia, então é o pokémon...assim que passa pelo tp ele bate as botas kkkk

MarshmelloM
28 de outubro de 2018 às 07:22
31 minutos atrás, klbkevinklb disse:

bom dia, então é o pokémon...assim que passa pelo tp ele bate as botas kkkk

Spoiler

function onStepIn(cid, item, position, fromPosition)

if #getCreatureSummons(cid) == 1 then
local itemz = getPlayerSlotItem(cid, 8).uid
doItemSetAttribute(itemz, "hp", 0)
doRemoveCreature(getCreatureSummons(cid)[1])
doSendMagicEffect(getCreaturePosition(cid), 188)
doPlayerSendTextMessage(cid, 22, "Seu pokémon desmaiou.")
end
return TRUE
end

 Testei aqui e funfou , ver se ai tmbn vai 

klbkevinklbK
28 de outubro de 2018 às 07:33

Onde coloca?

MarshmelloM
28 de outubro de 2018 às 07:34

Movements

klbkevinklbK
28 de outubro de 2018 às 07:39

Terei que colocar em qual arquivo? Ou em todos tp colocar isso?

MarshmelloM
28 de outubro de 2018 às 07:45

Ta vou explicar melhor, em movements/script cria um arquivo lua com nome que você  quiser e adicione isso dentro dele

Spoiler

function onStepIn(cid, item, position, fromPosition)

if #getCreatureSummons(cid) == 1 then
local itemz = getPlayerSlotItem(cid, 8).uid
doItemSetAttribute(itemz, "hp", 0)
doRemoveCreature(getCreatureSummons(cid)[1])
doSendMagicEffect(getCreaturePosition(cid), 188)
doPlayerSendTextMessage(cid, 22, "Seu pokémon desmaiou.")
end
return TRUE
end

 

Em movements.xml cole essa tag lá

<movevent type="StepIn" actionid="55557" event="script" value="NOMEDOSEUARQUIVO.lua"/>

 

Nos numeros "55557" você vai no RME , onde vai ficar o TP , Vc da 2 clics e coloca essa tag , siga a imagem abaixoimage.thumb.png.ffc5178adb0e6a33b4f0ad71f306b58d.png 

klbkevinklbK
28 de outubro de 2018 às 07:52

Em todos tp? N tem um jeito sem fazer pelo rme?

MarshmelloM
28 de outubro de 2018 às 07:53
Agora, klbkevinklb disse:

Em todos tp? N tem um jeito sem fazer pelo rme?

Do mesmo jeito vc vai ter que usar o RME, pq vc vai ter que por os codigo da XML pra o TP ler 

CrypterC
28 de outubro de 2018 às 11:22

@klbkevinklb registre dessa forma no xml para que o script funcione em todos os portais

 

 

movements.xml

<movevent type="StepIn" itemid="1387" event="script" value="teleportAction.lua"/>

 

Código que faz o pokemon retornar e não morrer, caso queira mesmo que o pokemon morra, use o script do Marshmello  com o registramento do xml que eu falei.

 

teleportAction.lua

function onStepIn(cid, item, position, fromPosition)
    if #getCreatureSummons(cid) >= 1 then
        local pokeball = getPlayerSlotItem(cid, 8).uid
        local poke = getCreatureSummons(cid)[1]
        local btype = getPokeballType(pokeball.itemid)
        local effect = pokeballs[btype].effect
        if not effect then
            effect = 21
        end
        local cd = getCD(pokeball.uid, "blink", 30)
        if cd > 0 then
           setCD(item.uid, "blink", 0)
        end
        doReturnPokemon(cid, poke, pokeball, effect)
        doPlayerSendCancel(cid, '12//,hide')
        doPlayerSendTextMessage(cid, 22, "Seu pokémon retornou para a pokebola.")
   end
   return true
end

 

Editado Outubro 28 por Crypter

klbkevinklbK
28 de outubro de 2018 às 19:44
8 horas atrás, Crypter disse:

@klbkevinklb registre dessa forma no xml para que o script funcione em todos os portais

 

 

movements.xml

<movevent type="StepIn" itemid="1387" event="script" value="teleportAction.lua"/>

 

Código que faz o pokemon retornar e não morrer, caso queira mesmo que o pokemon morra, use o script do Marshmello  com o registramento do xml que eu falei.

 

teleportAction.lua

function onStepIn(cid, item, position, fromPosition)
    if #getCreatureSummons(cid) >= 1 then
        local pokeball = getPlayerSlotItem(cid, 8).uid
        local poke = getCreatureSummons(cid)[1]
        local effect = pokeballs[btype].effect
        if not effect then
            effect = 21
        end
        local cd = getCD(pokeball.uid, "blink", 30)
        if cd > 0 then
           setCD(item.uid, "blink", 0)
        end
        doReturnPokemon(cid, poke, pokeball, effect)
        doPlayerSendCancel(cid, '12//,hide')
        doPlayerSendTextMessage(cid, 22, "Seu pokémon retornou para a pokebola.")
   end
   return true
end

 

boa noite, coloquei a tag em movevents e em xml tbm, ta dando esse erro...

[28/10/2018 15:45:16] [Error - MoveEvents Interface] 
[28/10/2018 15:45:16] data/movements/scripts/teleportAction.lua:onStepIn
[28/10/2018 15:45:16] Description: 
[28/10/2018 15:45:16] data/movements/scripts/teleportAction.lua:5: attempt to index field '?' (a nil value)
[28/10/2018 15:45:16] stack traceback:
[28/10/2018 15:45:16]     data/movements/scripts/teleportAction.lua:5: in function <data/movements/scripts/teleportAction.lua:1>

CrypterC
28 de outubro de 2018 às 19:49
4 minutos atrás, klbkevinklb disse:

boa noite, coloquei a tag em movevents e em xml tbm, ta dando esse erro...
 

[28/10/2018 15:45:16] [Error - MoveEvents Interface] 
[28/10/2018 15:45:16] data/movements/scripts/teleportAction.lua:onStepIn
[28/10/2018 15:45:16] Description: 
[28/10/2018 15:45:16] data/movements/scripts/teleportAction.lua:5: attempt to index field '?' (a nil value)
[28/10/2018 15:45:16] stack traceback:
[28/10/2018 15:45:16]     data/movements/scripts/teleportAction.lua:5: in function <data/movements/scripts/teleportAction.lua:1>

 

Código atualizado, testa novamente ai

klbkevinklbK
28 de outubro de 2018 às 20:03
11 minutos atrás, Crypter disse:

Código atualizado, testa novamente ai

ainda nada

 

 

 [28/10/2018 16:05:48] [Error - MoveEvents Interface] 
[28/10/2018 16:05:49] data/movements/scripts/teleportAction.lua:onStepIn
[28/10/2018 16:05:49] Description: 
[28/10/2018 16:05:49] data/movements/scripts/teleportAction.lua:5: attempt to index field '?' (a nil value)
[28/10/2018 16:05:49] stack traceback:
[28/10/2018 16:05:49]     data/movements/scripts/teleportAction.lua:5: in function <data/movements/scripts/teleportAction.lua:1>

MarshmelloM
28 de outubro de 2018 às 20:07
4 minutos atrás, klbkevinklb disse:

ainda nada

 

 

 

 [28/10/2018 16:05:48] [Error - MoveEvents Interface] 
[28/10/2018 16:05:49] data/movements/scripts/teleportAction.lua:onStepIn
[28/10/2018 16:05:49] Description: 
[28/10/2018 16:05:49] data/movements/scripts/teleportAction.lua:5: attempt to index field '?' (a nil value)
[28/10/2018 16:05:49] stack traceback:
[28/10/2018 16:05:49]     data/movements/scripts/teleportAction.lua:5: in function <data/movements/scripts/teleportAction.lua:1>

 

Spoiler

function onStepIn(cid, item, position, fromPosition)
    if #getCreatureSummons(cid) >= 1 then
        local pokeball = getPlayerSlotItem(cid, 8).uid
        local poke = getCreatureSummons(cid)[1]
            effect = doSendMagicEffect(getCreaturePosition(cid), 188)
        
        local cd = getCD(pokeball.uid, "blink", 30)
        if cd > 0 then
           setCD(item.uid, "blink", 0)
        end
        doReturnPokemon(cid, poke, pokeball, effect)
        doPlayerSendCancel(cid, '12//,hide')
        doPlayerSendTextMessage(cid, 22, "Seu pokémon retornou para a pokebola.")
   end
   return true
end